A class of networks is composed of network structures designed to have a transfer function (from one or more input nodes to an output node) that is responsive to at least one digital input signal in a prescribed manner. The digital input signal can be a pin-strappable or programmable logic input signal, or other suitable signal. The manufacturing tolerance of various network structures has a tendency to cause degradation in the accuracy of the transfer function. In order to increase the accuracy of the network transfer function, network structures typically include adjustment or trim elements. The value of the adjustable elements can be varied by a suitable means to increase the accuracy of the transfer function.
The accuracy of the transfer function of a network is modified by the influence of various structures throughout the network. The influence of these structures on the accuracy of the transfer function is referred to as the sensitivity of the structure on the transfer function. Higher sensitivity network structures require finer adjustments within a suitable adjustment range. The adjustable element has to be designed appropriately for the structure with the highest sensitivity.
It is well known to those skilled in the art that greater precision is often obtained by using network topologies for which the transfer function depends primarily on the ratio matching between similar or identical elements, and not on the absolute value of individual elements or on the ratio matching of dissimilar elements. Therefore, it has long been the common practice in the design and construction of precision networks to utilize such topologies, and furthermore to favor the use of essentially identical unit elements. The use of identical unit elements means that many sources of parameter variation, including manufacturing variability, tend to affect each unit element in the same manner. Therefore the ratio between unit element parameters remains largely unchanged. A further benefit of such practice is that post-manufacturing parameter drift due to a variety of causes, including temperature change, aging etc, also tends to effect each unit element in the same manner, and therefore has a reduced effect on the network transfer function.
Likewise it is well known that it is desirable to use identical adjustable unit elements throughout the various structures in the network, and to arrange them in a fixed ratio with respect to the fixed elements. This results in better initial matching and hence better initial transfer function accuracy and therefore reduced trim range requirements. However, network sections with high sensitivity may require adjustable elements with a large ratio between adjustment range and adjustment resolution, which in turn tends to require a large area and/or complex trim structure. If an identical adjustable element is used throughout the entire network, an excessive area may be consumed. Furthermore, for network sections with lower sensitivity this adjustable element may be considered to be over-designed, resulting in greater network area and required trim time to make adjustments in manufacturing. Conversely, using a single adjustable element structure throughout the network which has a more acceptable area and trim time requirements and has sufficient adjustment range and resolution for less sensitive sections of the network may result in inadequate trim range, resolution and stability in the more sensitive sections of the network. A specific, non-limiting, example of a possible network of this type is a digital-to-analog converter (DAC). A DAC converts a digital input word to an analog output signal. DACs typically operate in either a unipolar or bipolar mode. The generic equation for determining the output VOUT in unipolar and bipolar DACs is shown in Equation 1:
                              V          OUT                =                  G          *                      V            REF                    *                      (                                          K                ⁢                                                                  ⁢                1                *                                                      INPUT                    ⁢                                                                                                              ⁢                                                                                                            ⁢                    CODE                                                        2                    n                                                              -                              K                ⁢                                                                  ⁢                2                                      )                                              (        1        )            where INPUT CODE is an n-bit digital word, G is the gain of the DAC and K1 and K2 are constants that determine the configuration mode. In unipolar mode configuration (e.g., when the output varies from 0 volts to VREF), K1=1 and K2=0 so that VOUT varies between 0 and G*VREF. In bipolar mode configuration (e.g., output varies from −VREF to VREF), K1=2 and K2=1 so that VOUT varies between −G*VREF and G* VREF. For the inverting unipolar configuration K1=−1 and K2=0 so that VOUT varies between 0 and −G*VREF.
FIG. 1 shows the example of a well known architecture of an inverting unipolar 3-bit DAC 10, which receives input VREF, control signal UPDATE and digital input INPUT CODE, and generates analog output VOUT. The DAC of FIG. 1 has 3-bit resolution for illustration only and can easily be modified to any practical resolution desired. The digital input INPUT CODE is a 3-bit digital word used by DAC 10 to convert input VREF into analog output VOUT. UPDATE is a binary control signal which determines when the digital word INPUT CODE can be used to convert VREF to produce a new VOUT. When UPDATE is LOW, VOUT remains substantially constant. When UPDATE changes from LOW to HIGH, DAC 10 converts VREF to analog output VOUT based on the INPUT CODE.
DAC 10 comprises resistor network 12, switches 161, 162 and 163, switch compensation element 17, switch control block 18, op-amp 22 and feedback element 20. Resistor network 12 is of a type commonly called an R-2R ladder, and includes substantially identical fixed unit resistors 2311, to 2342 and substantially identical adjustable trim elements 3011, to 3042. The input VREF is applied to input node 1 of DAC 10 while the output signal VOUT is produced at output node 3. An additional DAC node referred henceforth as GROUND is used as reference potential for both input VREF and output VOUT. Resistor network 12 receives the input VREF on node 1, is connected to switches 161, 162 and 163 through nodes 151,152 and 153, respectively, and to switch compensation element 17 through node 154. It comprises a number of switched and series structures. The first switched structure comprises two fixed unit resistors, 2311 and 2312, and two adjustable trim elements 3011 and 3012, all connected in series, and is coupled between the input node 1 and node 151. It functions as the most significant bit (MSB) of the ladder. The first series structure comprises fixed unit resistor 2313 and adjustable trim element 3013, connected in series, and is coupled between input node 1 and network internal node 4. The second switched structure comprises two fixed unit resistors, 2321 and 2322, and two adjustable trim elements 3021 and 3022, all connected in series, and is coupled between internal node 4 and node 152. It functions as the second bit of the ladder. The second series structure comprises fixed unit resistor 2323 and adjustable trim element 3023, connected in series, and is coupled between internal node 4 and internal node 5. The third switched structure comprises two fixed unit resistors, 2331 and 2332, and two adjustable trim elements 3031 and 3032, all connected in series, and is coupled between internal node 5 and node 153. It functions as the least significant bit (LSB) of the ladder. The last structure comprises two fixed unit resistors, 2341 and 2342, and two adjustable trim elements 3041 and 3042, all connected in series, and is coupled between internal node 5 and node 154. It functions as the ladder termination and is connected to GROUND node through the switch resistance compensation element 17.
In describing an R-2R ladder, the series structures are conventionally called the R-branches, and the switched structures and the termination structure are called the 2R-branches. Switch control block 18 receives control input UPDATE and digital input INPUT CODE. When UPDATE changes state from LOW to HIGH, switch control block 18 adjusts the levels of switch control nodes 281, through 283, according the present state of INPUT CODE. In this example of a 3-bit DAC, INPUT CODE may be a 3-bit binary signal. When the most significant bit (MSB) of INPUT CODE is HIGH, the switch control 18 will set node 281 such as to cause switch 161 to couple node 151 to node 2. When the most significant bit (MSB) of INPUT CODE is LOW, switch control 18 will set node 281 such as to cause switch 161 to couple node 151 to GROUND. Similarly, a HIGH or LOW state in the second bit of INPUT CODE will result in switch control 18 setting node 282 thus causing switch 162 to couple node 152 to node 2 or to GROUND respectively. A HIGH or LOW state in the third, least significant bit (LSB) of INPUT CODE will result in switch control 18 setting node 283 thus causing switch 163 to couple node 153 to node 2 or to GROUND respectively. In the manner described, the digital input INPUT CODE in combination with input signal VREF causes an intermediate current, IDAC to flow into node 2 from the switch elements 161 to 163 according to Equation 2, where RDAC is the input impedance of the R-2R ladder:
                                                                        I                DAC                            =                                                (                                                            V                      REF                                                              R                      DAC                                                        )                                *                                  (                                                            INPUT                      ⁢                                                                                                                        ⁢                                                                                                                      ⁢                      CODE                                                              2                      n                                                        )                                                                                                        =                                                (                                                            V                      REF                                                              R                      DAC                                                        )                                *                                  (                                                            INPUT                      ⁢                                                                                                                        ⁢                                                                                                                      ⁢                      CODE                                        8                                    )                                                                                        (        2        )            Feedback element 20 and op-amp 22 form a current-to-voltage converter. The op-amp 22 has an inverting input terminal (−) coupled to node 2, a non-inverting input terminal (+) coupled to GROUND, and an output terminal coupled to node 3. Feedback element 20, coupled between node 2 and node 3, creates a feedback loop around the op-amp 22. The resistance of feedback element 20, is commonly referred to as RFB.
The current to voltage converter operates to convert intermediate current IDAC to the output voltage VOUT. The resulting VOUT is shown in Equation 3:
                                                                        V                OUT                            =                                                -                                      I                    DAC                                                  *                                  R                  FB                                                                                                        =                                                -                                      V                    REF                                                  *                                  (                                                            R                      FB                                                              R                      DAC                                                        )                                *                                  (                                                            INPUT                      ⁢                                                                                                                        ⁢                                                                                                                      ⁢                      CODE                                                              2                      N                                                        )                                                                                                        =                                                -                                      V                    REF                                                  *                                  (                                                            R                      FB                                                              R                      DAC                                                        )                                *                                  (                                                            INPUT                      ⁢                                                                                          ⁢                      CODE                                        8                                    )                                                                                        (        3        )            For the 3-bit DAC example, MAX INPUT CODE=23−1=7, so for DIGITAL INPUT=0:                VOUT=0V, corresponding to ZERO SCALEand for DIGITAL INPUT=7:        
            V      OUT        =                  -                  V          REF                    *              (                              R            FB                                R            DAC                          )            *              (                  7          8                )              ,      corresponding    ⁢                  ⁢    to    ⁢                  ⁢    FULL    ⁢                  ⁢    SCALE  The prior art includes various configurations of DAC 10 from FIG. 1 in monolithic or discrete form. The configurations are typically chosen to be unipolar, bipolar or a combination thereof, such as a software programmable signal processor of a type described in U.S. Pat. No. 6,310,567, incorporated herein by reference.
It is generally recognized that the transfer function accuracy of resistor networks, of which the R-2R ladder shown in FIG. 1 is just an example, depend primarily upon the ratio matching of identical unit elements of constituent structures.
It is common practice to use identical fixed elements like fixed unit resistors 2311 through 2342 of network 12 when implementing such networks in order to minimize these matching errors. Nevertheless, matching errors between identical fixed elements are inherent in any practical implementation and result in transfer function linearity errors. The problem is alleviated by connecting trim elements like trim resistors 3011 through 3042 of network 12 in series with fixed network elements. These trim elements can be adjusted in a calibration process such as to correct the residual mismatch of the fixed elements. In order to reduce even further potential mismatch errors it is common practice to use trim elements which are mutually identical prior to any trimming and to associate a trim element to every fixed element in the network. In this manner every constituent structure of the network has the same ratio between the value and number of fixed elements to trim elements.
As a function of the network configuration, the sensitivity of various constituting structures varies with the structure position within the network. For an R-2R ladder like network 12, as one progresses down from the most significant bit (MSB) structure to the least significant bit (LSB) structure, the sensitivity is lowered by a factor of 2 for each adjacent less significant bit position. Hence the adjustable trim element positioned in a more significant bit structure and dimensioned for a given overall network transfer function accuracy can be said to be over designed when located in a less significant bit structure, wasting valuable area and trim time. Similarly an adjustable trim element positioned in a less significant bit structure and dimensioned for a given overall network transfer function accuracy is inadequate when located in a more significant bit structure.
The solution to this problem is to associate different trim structures to identical fixed elements function of their specific location within the network. This configuration does not use mutually identical fixed and mutually identical adjustable units throughout the network and thus suffers from higher initial errors hence requiring wider overall trim range, larger area and longer trim time. In addition such a network is substantially more sensitive to post-production variations like temperature, mechanical stress, aging, etc.
It will be apparent to those skilled in the art that the network configuration practiced herein described have general utility in a broad variety of network types and topologies, with applications including, but not restricted to: DAC's; ADC's; Programmable Amplifiers; Programmable Attenuators; Programmable Filters; Programmable Delay Elements; Programmable Resistors; and more.
Also, it will be apparent to those skilled in the art that the fixed and adjustable elements in these networks may consist of many different element types, singly or in combination, including but not limited to: resistors; capacitors; inductors; transistors; diodes; and more.
Furthermore, it will apparent to those skilled in the art that the adjustable elements may be adjusted by a wide variety of suitable means, including: laser trimming; fuse link trimming; anti-fuse link trimming; PROM control, programmable logic, and more.